Lenguaje de programación C

Uno de los lenguajes de programación más antiguos y utilizados en la actualidad es C. Este histórico de la programación cumple medio siglo este 2023. De este modo, fue en 1972 cuando el informático estadounidense Dennis Ritchie creó el lenguaje de programación C. En un principio, se diseñó como una mejora del lenguaje B. De ahí, incluso, vino su nombre. El lenguaje de programación C sirvió para crear el sistema operativo Unix, dando la posibilidad de implementar las populares minicomputadoras PDP-11. El código en C se caracteriza por su eficiencia, por lo que es uno de los lenguajes más empleados para diseñar software de sistemas.

Definición

El lenguaje de programación C se considera como uno de los lenguajes más importantes en la actualidad. Su flexibilidad aporta una gran libertad al programador informático; sin embargo, dispone de una baja comprobación de incorrecciones, por lo que la responsabilidad del profesional es total. Además del desarrollo de sistemas operativos, C es clave en la creación de apps y sustenta otros lenguajes más actuales como Java, C++ o C#. Por otro lado, C está compuesto por una base en la que se almacenan las diferentes funciones en forma de bloques de código y así operar en los parámetros marcados.

Características del lenguaje C

¿Cuáles son las características principales del lenguaje de programación C? A continuación, te mostramos las propiedades de C:

Lenguajes derivados de C

Desde el inicio del lenguaje han surgido varias ramas de evolución que han generado varios lenguajes:

Proceso de compilación

La compilación de un programa C se realiza en varias fases que normalmente son automatizadas y ocultadas por los entornos de desarrollo:

  1. Preprocesado consistente en modificar el código fuente en C según una serie de instrucciones (denominadas directivas de preprocesado) simplificando de esta forma el trabajo del compilador. Por ejemplo, una de las acciones más importantes es la modificación de las inclusiones (#include) por las declaraciones reales existentes en el archivo indicado.
  2. Compilación que genera el código objeto a partir del código ya preprocesado.
  3. Enlazado que une los códigos objeto de los distintos módulos y bibliotecas externas (como las bibliotecas del sistema) con el código objeto generado en el paso anterior para generar el programa ejecutable final.

Ejemplo de código

El siguiente programa imprime en pantalla la frase "Hola Mundo" (C99).

// necesario para utilizar printf()
# include <stdio.h>

int main(void) {
	printf("Hola Mundo\n");
	return 0;
}

El siguiente programa muestra el uso de punteros en C.

#include <stdio.h>

int main(){
	// Variable
	int numero = 99;

	// Puntero a variable
	int *p;

	// Asignación de puntero
	p = &numero;

	// Acceso al valor de la variable a la que apunta el puntero
	printf("Numero: %d\n",*p);

	// Acceso a la dirección a la que apunta el puntero
	printf("Direccion: %d\n",p);

	// Cambio de valor de la variable a la que apunta el puntero
	*p = 1;

	printf("Numero: %d\n",numero);

}

El siguiente escribe "Hola Mundo" en C89

/* comentarios con '//' no permitidos en C89, sí en C99 */
# include <stdio.h>  /* necesario para utilizar printf */

main() /* tipo 'int' de retorno implícito */
{
	printf ("Hola Mundo\n") ;
	return 0;
}

Estructura de control "else if"

if (condicion 1) {
    sentencia 1
} else if (condicion 2) {
    sentencia 2
} else if (condicion n) {
    sentencia n
} else {
    sentencias por defecto
}